perm filename RAND.MAC[2,LCS] blob
sn#153761 filedate 1975-04-04 generic text, type T, neo UTF8
00100 ;FORTRAN CALLABLE RANDOM NUMBER GENERATOR
00200 ;
00300 ;USE CALL RNDINT TO INITIALIZE THE GENERATOR
00400 ; (THE GENERATOR IS LOADED INITIALIZED)
00500 ;USE RAND(XL,XH) AS A FUNCTION TO RETURN THE NEXT
00600 ; RANDOM NUMBER BETWEEN XL AND XH
00700 ; (XL,XH ARE FLOATING POINT,RAND RETURNS
00800 ; FLOATING POINT)
00900 ;
00910 ;CALL ENDSUB CLEARS CONTROL O
01000 ENTRY RNDINT
01100 RNDINT: 0
01200 MOVE 0,[756132257563]
01300 MOVEM 0,R1
01400 ADDI 0,2
01500 MOVEM 0,R2
01600 JRA 16,0(16)
01700 R1: 756132257563
01800 R2: 756132257565
01900 ENTRY RAND
02000 RAND: 0
02100 MOVEM 1,TEMP
02200 MOVE 0,@0(16)
02300 MOVE 1,@1(16)
02400 FSBR 1,0
02500 MOVEM 0,LLIM#
02600 MOVE 0,R1
02700 ADD 0,R2
02800 EXCH 0,R2
02900 MOVEM 0,R1
03000 LSH 0,-11
03100 FSC 0,200
03200 FMP 0,1
03300 FAD 0,LLIM
03400 MOVE 1,TEMP
03500 JRA 16,2(16)
03600 ENTRY ENDSUB
03700 ENDSUB: 0
03800 SKPINC
03900 JFCL
04000 JRA 16,(16)
04100 TEMP: 0
04200 END